home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / p_man / cat3 / libblas / herk.z / herk
Encoding:
Text File  |  1998-10-30  |  11.9 KB  |  265 lines

  1.  
  2.  
  3.  
  4. ____HHHHEEEERRRRKKKK((((3333FFFF))))                                                            ____HHHHEEEERRRRKKKK((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      zherk, cherk - BLAS level three   Hermitian Rank K Update
  10.  
  11.  
  12. FFFFOOOORRRRTTTTRRRRAAAANNNN 77777777 SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee zzzzhhhheeeerrrrkkkk((((uuuupppplllloooo,,,,ttttrrrraaaannnnssss,,,,nnnn,,,,kkkk,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc))))
  14.            cccchhhhaaaarrrraaaacccctttteeeerrrr****1111        uuuupppplllloooo,,,, ttttrrrraaaannnnssss
  15.            iiiinnnntttteeeeggggeeeerrrr            nnnn,,,, kkkk,,,, llllddddaaaa,,,, llllddddcccc
  16.            ddddoooouuuubbbblllleeee ccccoooommmmpppplllleeeexxxx     aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa
  17.            ddddoooouuuubbbblllleeee ccccoooommmmpppplllleeeexxxx     aaaa(((( llllddddaaaa,,,,****)))),,,, cccc((((llllddddcccc,,,,****))))
  18.  
  19.      ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee cccchhhheeeerrrrkkkk((((uuuupppplllloooo,,,,ttttrrrraaaannnnssss,,,,nnnn,,,,kkkk,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc))))
  20.            cccchhhhaaaarrrraaaacccctttteeeerrrr****1111        uuuupppplllloooo,,,, ttttrrrraaaannnnssss
  21.            iiiinnnntttteeeeggggeeeerrrr            nnnn,,,, kkkk,,,, llllddddaaaa,,,, llllddddcccc
  22.            ccccoooommmmpppplllleeeexxxx            aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa
  23.            ccccoooommmmpppplllleeeexxxx            aaaa(((( llllddddaaaa,,,,****)))),,,, cccc((((llllddddcccc,,,,****))))
  24.  
  25.  
  26. CCCC SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  27.      vvvvooooiiiidddd zzzzhhhheeeerrrrkkkk((((uuuupppplllloooo,,,,ttttrrrraaaannnnssss,,,,nnnn,,,,kkkk,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc))))
  28.            MMMMaaaattttrrrriiiixxxxTTTTrrrriiiiaaaannnngggglllleeee     uuuupppplllloooo;;;;
  29.            MMMMaaaattttrrrriiiixxxxTTTTrrrraaaannnnssssppppoooosssseeee    ttttrrrraaaannnnssss;;;;
  30.            IIIInnnntttteeeeggggeeeerrrr            nnnn,,,, kkkk,,,, llllddddaaaa,,,, llllddddcccc;;;;
  31.            ZZZZoooommmmpppplllleeeexxxx            aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa;;;;
  32.            ZZZZoooommmmpppplllleeeexxxx           ((((****aaaa))))[[[[llllddddaaaa****kkkk]]]],,,, ((((****cccc))))[[[[llllddddaaaa****nnnn]]]];;;;
  33.  
  34.      vvvvooooiiiidddd cccchhhheeeerrrrkkkk((((uuuupppplllloooo,,,,ttttrrrraaaannnnssss,,,,nnnn,,,,kkkk,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,bbbbeeeettttaaaa,,,,cccc,,,,llllddddcccc))))
  35.            MMMMaaaattttrrrriiiixxxxTTTTrrrriiiiaaaannnngggglllleeee     uuuupppplllloooo;;;;
  36.            MMMMaaaattttrrrriiiixxxxTTTTrrrraaaannnnssssppppoooosssseeee    ttttrrrraaaannnnssss;;;;
  37.            IIIInnnntttteeeeggggeeeerrrr            nnnn,,,, kkkk,,,, llllddddaaaa,,,, llllddddcccc;;;;
  38.            CCCCoooommmmpppplllleeeexxxx            aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa;;;;
  39.            CCCCoooommmmpppplllleeeexxxx           ((((****aaaa))))[[[[llllddddaaaa****kkkk]]]],,,, ((((****cccc))))[[[[llllddddaaaa****nnnn]]]];;;;
  40.  
  41.  
  42.  
  43.  
  44. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  45.      zzzzhhhheeeerrrrkkkk and cccchhhheeeerrrrkkkk perform one of the matrix-matrix operations
  46.  
  47.            C := alpha*A*conjg( A' ) + beta*C,
  48.  
  49.      or
  50.  
  51.            C := alpha*conjg( A' )*A + beta*C,
  52.  
  53.      where alpha and beta are real scalars, C is an n by n hermitian matrix
  54.      and A is an n by k matrix in the first case and a k by n matrix in the
  55.      second case.
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ____HHHHEEEERRRRKKKK((((3333FFFF))))                                                            ____HHHHEEEERRRRKKKK((((3333FFFF))))
  71.  
  72.  
  73.  
  74. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  75.      uuuupppplllloooo    On entry, uuuupppplllloooo specifies whether the matrix is an upper or lower
  76.              triangular matrix as follows:
  77.  
  78.              FFFFOOOORRRRTTTTRRRRAAAANNNN
  79.              uplo = 'U' or 'u'   Only the upper triangular part of C
  80.                                  is to be referenced.
  81.              uplo = 'L' or 'l'   Only the lower triangular part of C
  82.                                  is to be referenced.
  83.  
  84.              CCCC
  85.              uplo = UpperTriangle     Only the upper triangular part of C
  86.                                       is to be referenced.
  87.              uplo = LowerTriangle     Only the lower triangular part of C
  88.                                       is to be referenced.
  89.  
  90.              Unchanged on exit.
  91.  
  92.      ttttrrrraaaannnnssss   specifies the operation to be performed as follows:
  93.  
  94.              FFFFOOOORRRRTTTTRRRRAAAANNNN
  95.              trans = 'N' or 'n'       C := alpha*A*conjg( A' ) + beta*C.
  96.              trans = 'C' or 'c'       C := alpha*conjg( A' )*A + beta*C.
  97.  
  98.              CCCC
  99.              trans = NoTranspose      C := alpha*A*conjg( A' ) + beta*C.
  100.              trans = ConjugateTranspose    C := alpha*conjg( A' )*A + beta*C.
  101.  
  102.              Unchanged on exit.
  103.  
  104.      nnnn       On entry, nnnn specifies the order of the matrix C. nnnn must be at
  105.              least zero.
  106.              Unchanged on exit.
  107.  
  108.      kkkk       On entry with, trans = 'N' or 'n' or NoTranspose kkkk specifies the
  109.              number of columns of the matrix A, and on entry with trans = 'T'
  110.              or 't' or Transpose, kkkk specifies  the number of rows of the
  111.              matrix A.  K must be at least zero.
  112.              Unchanged on exit.
  113.  
  114.      aaaallllpppphhhhaaaa   specifies the scalar alpha.
  115.              Unchanged on exit.
  116.  
  117.      aaaa       An array containing the matrix A.
  118.  
  119.              FFFFOOOORRRRTTTTRRRRAAAANNNN
  120.              Array of dimension (lda, ka).
  121.  
  122.              CCCC
  123.              A pointer to an array of size lda*ka.
  124.              See note below about array storage convention for C.
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. ____HHHHEEEERRRRKKKK((((3333FFFF))))                                                            ____HHHHEEEERRRRKKKK((((3333FFFF))))
  137.  
  138.  
  139.  
  140.              kkkkaaaa is kkkk when transa = 'N' or 'n' or NoTranspose and is nnnn
  141.              otherwise.  Before entry with trans = 'N' or 'n' or NoTranspose,
  142.              the leading n by k part of the array aaaa must contain the matrix A,
  143.              otherwise the leading  k by n part of the array aaaa must contain
  144.              the matrix A.
  145.  
  146.              Unchanged on exit.
  147.  
  148.      llllddddaaaa     On entry, llllddddaaaa specifies the first dimension of aaaa as declared in
  149.              the calling (sub) program. When  transa = 'N' or 'n' or
  150.              NoTranspose, then lda must be at least max( 1, n ), otherwise lda
  151.              must be at least  max( 1, k ).
  152.              Unchanged on exit.
  153.  
  154.      bbbbeeeettttaaaa    On entry, bbbbeeeettttaaaa specifies the scalar beta.
  155.              Unchanged on exit.
  156.  
  157.      cccc       An array containing the matrix C.
  158.  
  159.              FFFFOOOORRRRTTTTRRRRAAAANNNN
  160.              An array of dimension ( ldc, n ).
  161.  
  162.              CCCC
  163.              A pointer to an array of size ldc*n.
  164.              See note below about array storage convention for C.
  165.  
  166.              Before entry  with uplo = 'U' or 'u' or UpperTraingle, the
  167.              leading  n by n triangular part  of the  symmetric matrix  and
  168.              the strictly lower triangular part of C is not referenced.  On
  169.              exit, the upper triangular part of the array  C is overwritten by
  170.              the upper triangular part of the updated matrix.
  171.  
  172.              Before entry  with  uplo = 'L' or 'l',  the leading  n by n lower
  173.              triangular part of the array C must contain the lower triangular
  174.              part  of the  symmetric matrix  and the strictly upper triangular
  175.              part of C is not referenced.  On exit, the lower triangular part
  176.              of the array  C is overwritten by the lower triangular part of
  177.              the updated matrix.
  178.  
  179.      llllddddcccc     On entry, llllddddcccc specifies the first dimension of cccc as declared in
  180.              the calling (sub) program. llllddddcccc must be at least max( 1, n ).
  181.  
  182.              Unchanged on exit.
  183.  
  184.  
  185.  
  186. CCCC AAAARRRRRRRRAAAAYYYY SSSSTTTTOOOORRRRAAAAGGGGEEEE CCCCOOOONNNNVVVVEEEENNNNTTTTIIIIOOOONNNN
  187.        The matrices  are assumed  to be stored in a  oooonnnneeee ddddiiiimmmmeeeennnnssssiiiioooonnnnaaaallll CCCC aaaarrrrrrrraaaayyyy
  188.        in an analogous fashion as a Fortran array (column major). Therefore,
  189.        the element  A(i+1,j)  of matrix A  is stored  immediately  after the
  190.        element  A(i,j), while  A(i,j+1) is lda  elements apart from  A(i,j).
  191.        The element A(i,j) of the matrix can be accessed directly by reference
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. ____HHHHEEEERRRRKKKK((((3333FFFF))))                                                            ____HHHHEEEERRRRKKKK((((3333FFFF))))
  203.  
  204.  
  205.  
  206.        to  a[ (j-1)*lda + (i-1) ].
  207.  
  208.  
  209. AAAAUUUUTTTTHHHHOOOORRRRSSSS
  210.           Jack Dongarra, Argonne National Laboratory.
  211.           Iain Duff, AERE Harwell.
  212.           Jeremy Du Croz, Numerical Algorithms Group Ltd.
  213.           Sven Hammarling, Numerical Algorithms Group Ltd.
  214.  
  215.           Optimized and parallelized for SGI R3000, R4x00 and R8000 platforms.
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.                                                                         PPPPaaaaggggeeee 4444
  262.  
  263.  
  264.  
  265.